﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace RoadSystemTest
{    
    //Az autóhoz tartozó interfész.
    //Az eseményeket és a pozíciót lekérő függvényeket tartalmaz
    public interface ICarObject
    {
        event TrafficEventHandler OnMoveLane;

        event TrafficEventHandler OnDeadEnd;
        event TrafficEventHandler OnGetParent;

        Point GetPosition();

        int GetSpeed();

        ILaneObject GetParent();        

        void Move(Point newPos, double rotation);
        void Move(Point newPos);

        bool IsDisappeared();
        void Disappear();

        void ResetEvents();
    }
}
